package com.study.spark.scala.chapter05

object Scala08_Function_1 {
  def main(args: Array[String]): Unit = {
    // TODO 函数式编程 - 递归
    def test(): Unit ={
      test()
      println("test")
    }
//    test()//java.lang.StackOverflowError

    // 尾递归： 不是真正的递归，是由于编译器优化，形成while循环，
    // 一直处于压栈弹栈的状态，所以是伪递归
    // java中也有尾递归，但是不会被优化为while循环
    def test1(): Unit ={
      println("test1")
      test1()
    }
    test1()
    /*
test1
test1
......
     */


  }

}
  